package com.weiyu.bultrasound.core.service;

import com.github.pagehelper.PageInfo;
import com.weiyu.bultrasound.core.model.entity.Applications;
import com.weiyu.bultrasound.core.model.request.CommonRequest;
import com.weiyu.bultrasound.core.model.request.ApplyRequestBody;
import com.weiyu.bultrasound.core.model.request.UploadRequest;
import com.weiyu.bultrasound.core.model.response.CommonResponse;
import com.weiyu.bultrasound.core.model.vo.ApplicationsVO;

import java.util.List;
import java.util.Map;

/**
 *@description 
 *@author abner chow
 *@date 2019-08-07 15:22
 */
public interface ApplicationsService {


     /**
      * @description
      * @Param: [id]
      * @Return: com.weiyu.bultrasound.core.model.entity.Applications
      * @Author: abner chow
      * @Date: 2019/8/21 17:20
      */
     Applications get(Long id);

    /**
     * @description 根据主键获取视图实体
     * @Param: [id]
     * @Return: com.weiyu.bultrasound.core.model.entity.Applications
     * @Author: abner chow
     * @Date: 2019/8/8 11:18
     */
     ApplicationsVO getById(Long id);

     /**
      * @description 保存
      * @Param: [applications]
      * @Return: java.lang.Boolean
      * @Author: abner chow
      * @Date: 2019/8/8 11:18
      */
     Boolean save(Applications applications);

     /**
      * @description 床旁医疗车业务申请接口
      * @Param: [param]
      * @Return: com.github.pagehelper.PageInfo
      * @Author: abner chow
      * @Date: 2019/8/8 11:15
      */
     PageInfo getByPage(Map param);

     /**
      * @description 床旁医疗车业务申请接口
      * @Param: [commonRequest]
      * @Return: 
      * @Author: abner chow
      * @Date: 2019/8/8 11:15
      */
     CommonResponse tMIMedCartApply(CommonRequest<ApplyRequestBody> commonRequest);


     /**
      * @description 移动端上传文件
      * @Param: [uploadRequest]
      * @Return: java.lang.Boolean
      * @Author: abner chow
      * @Date: 2019/8/12 14:24
      */
     Boolean uploadFile(UploadRequest uploadRequest);


     /**
      * @description 根据申请代码检测是否已存在
      * @Param: [applyCode]
      * @Return: java.lang.Boolean
      * @Author: abner chow
      * @Date: 2019/8/22 15:02
      */
     Boolean checkByApplyCode(String applyCode);



     /**
      * @description 获取已上传但未同步的申请列表
      * @Param: []
      * @Return: java.util.List<com.weiyu.bultrasound.core.model.entity.Applications>
      * @Author: abner chow
      * @Date: 2019/8/27 16:28
      */
     List<Applications> getUnsynList();

}
